﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using Fiuba.Algo3.Titiritero.Vista;
using Fiuba.Algo3.Titiritero;
using LibreriaDeClases;

namespace BattleCity
{
    public class Ametralladora : Arma
    {
        public Ametralladora()
        {
            this.municiones = 1;
	        this.nombre = "Ametralladora";
        }
	    public Ametralladora(Point puntoSuperiorIzquierdo)
        {
            this.Figura = new Rectangulo(puntoSuperiorIzquierdo, 15, 15);
	        this.nombre = "Ametralladora";
        }

        //queda afuera este numero aleatorio porque sino todos los tanques inicializados
        //en el mismo momento, disparan a la misma vez.
        //El juego arranca siempre de forma diferente
        private static Random r = new Random(DateTime.Now.Millisecond);

        override protected bool debeDisparar()
        {
            double aleatorio = r.NextDouble();
            if (aleatorio < 0.03) //Como tiene una velocidad de disparo lenta, tiene poca probabilidad de disparar
                return true;
            else return false;
        }

        override protected Proyectil getProyectil(Point ubicacion, IDireccion direccion)
        {
            return new ProyectilAmetralladora(ubicacion, direccion);
        }
    }
}
